package user

import (
	"system-admin/config"
	"system-admin/config/mysql"
	"system-admin/internal/models"

	"192.168.1.75/go-pkg/errorx"
)

// CreateSuperAdmin 初始化管理员
func CreateSuperAdmin() error {
	var adminUser models.User
	// 用户id
	adminUser.ID = "1"
	// 用户名
	adminUser.Username = config.Config.AdminUser.Username
	// 密码
	adminUser.Password = generateEncryptPasswd(config.Config.AdminUser.Password)
	// 角色
	adminUser.RoleID = "1"
	// 商户id
	adminUser.MerchantID = "1"
	// 超级管理员
	adminUser.IsSuperAdmin = 1
	// 状态
	adminUser.Status = 1

	// 新建
	rowsAffected := mysql.NewDB().Model(&models.User{}).Create(&adminUser).RowsAffected
	if rowsAffected <= 0 {
		return errorx.New("创建超级管理员账号失败", -1)
	}
	return nil
}
